/*
 *    Copyright (c) 2018-2025, boss All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the boss developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: boss
 */

package com.hopes.bizz.basic.park.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hopes.boss.admin.api.resolver.DictResolver;
import com.hopes.boss.admin.api.resolver.enums.AdminDictEnum;
import com.hopes.boss.admin.api.resolver.enums.SysDictEnum;
import com.hopes.boss.common.entity.BaseLogicEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 园区基本信息
 *
 * @author pig
 * @date 2023-10-26 13:45:03
 */
@Data
@TableName("base_park_info")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "园区基本信息")
public class BaseParkInfoEntity extends BaseLogicEntity {

    private static final long serialVersionUID = 1L;


	/**
	* 标识
	*/
    @TableId(type = IdType.ASSIGN_ID)
    @Schema(description="标识")
    private Long id;

	/**
	* 园区编码
	*/
    @Schema(description="园区编码")
    private String parkCode;

	/**
	* 园区名称
	*/
    @Schema(description="园区名称")
    private String parkName;

	/**
	* 园区负责人
	*/
    @Schema(description="园区负责人")
    private String parkPrincipal;

	/**
	* 负责人职务
	*/
    @Schema(description="负责人职务")
    private String principalPosition;

	/**
	* 负责人座机
	*/
    @Schema(description="负责人座机")
    private String principalPhone;

	/**
	* 负责人手机号
	*/
    @Schema(description="负责人手机号")
    private String principalMobile;

	/**
	* 负责人邮箱
	*/
    @Schema(description="负责人邮箱")
    private String principalEmail;

	/**
	* 管理化工园区机构名称
	*/
    @Schema(description="管理化工园区机构名称")
    private String managerUnitName;

	/**
	* 管理机构联系人
	*/
    @Schema(description="管理机构联系人")
    private String managerName;

	/**
	* 管理机构联系人座机
	*/
    @Schema(description="管理机构联系人座机")
    private String managerPhone;

	/**
	* 管理机构联系人手机号
	*/
    @Schema(description="管理机构联系人手机号")
    private String managerMobile;

	/**
	* 管理机构联系人邮箱
	*/
    @Schema(description="管理机构联系人邮箱")
    private String managerEmail;

	/**
	* 批准时间(yyyy-MM-dd HH:mm:ss)
	*/
    @Schema(description="批准时间(yyyy-MM-dd HH:mm:ss)")
    private LocalDateTime approveTime;

	/**
	* 审批机关
	*/
    @Schema(description="审批机关")
    private String approveOrgan;

	/**
	* 审批文号
	*/
    @Schema(description="审批文号")
    private String approveNum;

	/**
	* 行政区划编码
	*/
    @Schema(description="行政区划编码")
    private String districtCode;

	/**
	* 详细地址
	*/
    @Schema(description="详细地址")
    private String districtAddr;

	/**
	* 中心经纬度
	*/
    @Schema(description="中心经纬度")
    private String locationPoint;

	/**
	* 范围选择
	*/
    @Schema(description="范围选择")
    private String locationScope;

	/**
	* 四至范围-东
	*/
    @Schema(description="四至范围-东")
    private String locationE;

	/**
	* 四至范围-西
	*/
    @Schema(description="四至范围-西")
    private String locationW;

	/**
	* 四至范围-南
	*/
    @Schema(description="四至范围-南")
    private String locationS;

	/**
	* 四至范围-北
	*/
    @Schema(description="四至范围-北")
    private String locationN;

	/**
	* 管委会行政区编码
	*/
    @Schema(description="管委会行政区编码")
    private String parkManageNum;

	/**
	* 管委会详细地址
	*/
    @Schema(description="管委会详细地址")
    private String parkManageAddr;

	/**
	* 园区是否有环境敏感区 0:否 1:是
	*/
    @Schema(description="园区是否有环境敏感区 0:否 1:是")
    private Boolean parkManageSensitive;

	/**
	* 园区简介
	*/
    @Schema(description="园区简介")
    private String parkComment;

	/**
	* 机构ID
	*/
    @Schema(description="机构ID")
    private Long orgId;

	public String getOrgIdStr() {
		return DictResolver.getItemLabelByValue(AdminDictEnum.sys_company,this.orgId);
	}
	public String getParkManageSensitiveStr() {
		return DictResolver.getItemLabelByValue(SysDictEnum.yes_no_type,this.parkManageSensitive);
	}

}
